const { defineConfig } = require('@vue/cli-service');
const pagesConfig = require('./public/js/pagesConfig');
const webpack = require("webpack");
let timeStamp = new Date().getTime();

//小图片不转Base64的方法 ，放入public,img导入

module.exports = defineConfig({
  transpileDependencies: true,
  // 所有的资源都会被链接为相对路径，这样打出来的包可以被部署在任意路径(之前是baseUrl，3.3之后更换了)
  //publicPath:'',
  // 输出文件目录
  outputDir: 'dist',
  /**生产环境是否生成  .map文件 true生成**/
  productionSourceMap: false,
  //生成的静态资源在它们的文件名中包含了 hash 以便更好的控制缓存，默认值为true
  filenameHashing: true,
  //资源文件夹添加随机数
  assetsDir: 'static'+timeStamp,
  //页面
  pages:pagesConfig.htmls,
  configureWebpack: {    //js随机数
    output: { // 输出重构 打包编译后的js文件名称,添加时间戳.
      filename: `js/js[name].${timeStamp}.js`,
      chunkFilename: `js/chunk.[id].${timeStamp}.js`,
    },
    //全局导入,jquery
    plugins: [
      new webpack.ProvidePlugin({
        $:"jquery",
      })
    ],
  },
  css: { //css 随机数
    extract: { // 打包后css文件名称添加时间戳
      filename: `css/[name].${timeStamp}.css`,
      chunkFilename: `css/chunk.[id].${timeStamp}.css`,
    }
  },

  chainWebpack: config => {
    config.plugin('define').tap((definitions) => {
      Object.assign(definitions[0], {
        __VUE_OPTIONS_API__: 'true',
        __VUE_PROD_DEVTOOLS__: 'false',
        __VUE_PROD_HYDRATION_MISMATCH_DETAILS__: 'false'
      })
      return definitions
    });
  },



});


